2005年06月29日
川俣晶の縁側ソフトウェア技術雑記 total 5482 count

inetd.confでsshを有効にすることでログにAddress already in useが記録される問題

Written By: 川俣 晶連絡先

 恥かきネタをもう一発書いておこう (汗。

現象 §

 nan.piedey.co.jpのFreeBSD 5.4をインストールし、設定を行った後、/var/log/messages

に以下のようなメッセージが記録されるようになった。

Jun 29 14:57:30 nan inetd[504]: ssh/tcp: bind: Address already in use

原因 §

 inetd.confの下記の行の先頭の#を削除し、この行を有効にしたため。

#ssh stream tcp nowait root /usr/sbin/sshd sshd -i -4

 FreeBSD 5.4は、デフォルト設定でsshを起動するが、その際inetdを使用しない。

 しかし、inetd経由で起動することもできるため、上記の行がinetd.confに存在する。

 もし、inetd経由でsshを起動する場合は、デフォルトで起動されるsshを止めておかねばならないが、そのような手順を取らずに上記の行を有効にすると、sshリクエスト待ちが2つの発生し、ポートが重複してしまう。これにより、ログにエラーが記録される。

解決 §

 inetd.confの下記の行の先頭に#を追加。(初期状態に戻す)

ssh stream tcp nowait root /usr/sbin/sshd sshd -i -4